import { createSlice } from "@reduxjs/toolkit"

const counterStore = createSlice({
    name: 'counter',
    // 初始化状态数据
    initialState: {
        count: 0
    },
    // 修改数据的同步方法，支持直接修改。
    reducers: {
        increment(state) {
            state.count++;
        },
        decrement(state) {
            state.count--;
        },
        addNum(state, action) {
            state.count += action.payload;
        }
    }
});
// 解构出创建 action 对象的函数 （actionCreator）
const { increment, decrement, addNum } = counterStore.actions;
// 获取 reducer 函数
const counterReducer = counterStore.reducer;
// 导出创建 action 对象的函数和 reducer 函数。
export { increment, decrement, addNum };
export default counterReducer;

/**
 * 同步 store
 */